import * as axiosBase from "./request";
import axios from 'axios';
//获取歌曲url
export let getMusicUrl = async function (params) {
  let res = await axiosBase.GET(API_PORT +"/song/url", {...params});
  return res.data;
}
//获取专辑信息
export let getAlbumInfo = async function (params) {
  let res = await axiosBase.GET(API_PORT +"/album", {...params});
  return res;
}

//获取艺术家信息
export let getArtistInfo = async function (params) {
  let res = await axiosBase.GET(API_PORT +"/artist/detail", {...params});
  return res;
}
/**
 * 
 * @param {*} downUrl 流文件地址
 * @param {*} fileName 文件名
 * @returns 
 */
 export let downloadFile = async function (downUrl, fileName) {
  axios({
    method: 'get',
    url: downUrl,
    responseType: 'blob',
    headers: {'content-type': 'audio/mpeg'}
    // headers: {'content-length': '4066786', 'content-type': 'audio/mpeg'}
  }).then((res) => {
    let blobType = 'application/force-download' // 设置blob请求头
    // console.log(res);
    let blob = new Blob([res.data], {type: res.data.type}) // 创建blob 设置blob文件类型 data 设置为后端返回的文件(例如mp3,jpeg) type:这里设置后端返回的类型 为 mp3
    let downa = document.createElement('a') // 创建A标签
    let href = window.URL.createObjectURL(blob) // 创建下载的链接
    downa.href = href // 下载地址
    downa.download = fileName // 下载文件名
    document.body.appendChild(downa)
    downa.click() // 模拟点击A标签
    document.body.removeChild(downa) // 下载完成移除元素
    window.URL.revokeObjectURL(href) // 释放blob对象
  }).catch(function (error) {
    console.log(error)
  })
}
